// styles for admin/settings
.settings {
  .setting {
    padding-bottom: 20px;

    .setting-label {
      float: left;
      width: 17.6576%;
      margin-right: 12px;

      @media (max-width: $mobile-breakpoint) {
        float: none;
        margin-right: 0;
        margin-left: 0;
        width: 100%;

        h3 {
          margin-bottom: 6px;
        }
      }

      .history-icon {
        opacity: 0;
        transition: opacity 0.3s;
        color: var(--primary-medium);
      }

      &:hover .history-icon {
        opacity: 1;
      }
    }

    .setting-value {
      float: left;
      width: 53%;
      padding-right: 20px;

      input[type="checkbox"],
      input[type="radio"] {
        flex: 0 0 auto;
      }

      .category-selector {
        width: 95%;
      }

      @media (max-width: $mobile-breakpoint) {
        width: 100%;
        padding-right: 0;
      }

      .select-kit {
        width: 100% !important; // Needs !important to override hard-coded value

        @media (max-width: $mobile-breakpoint) {
          width: 100% !important; // !important overrides hard-coded mobile width of 68px
        }
      }

      .image-uploader {
        display: flex;
        flex-direction: column;

        .image-upload-controls {
          display: flex;
          gap: 0.5em;
          margin: 0 0 0.5em;
        }
      }

      .uploaded-image-preview {
        background-size: contain;
        background-repeat: no-repeat;
        background-color: var(--primary-medium);
      }
    }

    .setting-controls {
      float: left;
    }

    .input-setting-string,
    .input-setting-integer,
    .input-setting-textarea {
      width: 100%;

      @media (max-width: $mobile-breakpoint) {
        width: 100%;
      }
    }

    .input-setting-textarea {
      height: 150px;
    }

    .input-setting-list {
      padding: 1px;
      background-color: var(--secondary);
      border: 1px solid var(--input-border-color);
      border-radius: 3px;
      transition:
        border linear 0.2s,
        box-shadow linear 0.2s;

      @media (max-width: $mobile-breakpoint) {
        width: 100%;
      }

      li.sortable-placeholder {
        @include unselectable;
        padding: 3px 5px 3px 18px;
        margin: 3px 0 3px 5px;
        position: relative;
        line-height: var(--line-height-small);
        cursor: default;
        border: 1px dashed var(--primary-low-mid);
        border-radius: 3px;
        background-clip: padding-box;
        background-color: transparent;
        width: 3em;
        height: 1em;
      }
    }

    .desc,
    .validation-error {
      padding-top: 3px;
      font-size: var(--font-down-1);
      line-height: var(--line-height-large);
    }

    .validation-error {
      color: var(--danger);
    }

    .job.site-setting {
      display: flex;
      flex-direction: row;

      p {
        margin: 0;
      }

      .alert {
        color: var(--danger);
        background-color: transparent;
        padding: 0;
      }

      .success {
        color: var(--success);
      }

      .progress {
        margin-left: 0.5rem;
      }
    }

    .desc {
      color: var(--primary-medium);
    }

    h3 {
      font-size: var(--font-0);
      font-weight: normal;
    }
  }

  .setting.overridden {
    .values input {
      background-color: var(--highlight-bg);
    }

    h3 {
      position: relative;

      &::before {
        content: "";
        position: absolute;
        top: 0.5rem;
        left: -1rem;
        width: 0.5rem;
        height: 0.5rem;
        border-radius: 100%;
        background-color: var(--highlight-high);
      }
    }
  }

  .setting.overridden.string {
    input[type="text"],
    input[type="password"],
    textarea {
      background-color: var(--highlight-bg);
    }
  }

  .warning {
    color: var(--danger);
  }

  .file-types-list__button {
    margin-top: 0.5em;
    margin-bottom: 0.2em;
  }

  .discourse-tags {
    gap: var(--space-1);

    .simple {
      margin-right: var(--space-1);
    }
  }
}
